package com.onesports.intelligent.k12.polarlight.domain.vo.student;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * @author Wsy
 **/
@Data
@ApiModel("学员详情-课程列表VO")
public class StudentCourseVO {

    @ApiModelProperty("课程名称")
    private String courseName;

    @ApiModelProperty("课程id")
    private String courseId;

    @ApiModelProperty("班级名称")
    private String className;

    @ApiModelProperty("教练名称")
    private String coachName;

    @ApiModelProperty("教练id")
    private String coachId;

    @ApiModelProperty("上课开始日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startDate;

    @ApiModelProperty("上课结束日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endDate;

    @ApiModelProperty("排课方式 1：按星期 2：按日期")
    private String courseType;

    @ApiModelProperty("星期code数组")
    private String[] weekCode;

    @ApiModelProperty("课程日期")
    private List<Date> courseDateList;

    @ApiModelProperty("课程日期")
    private List<String> courseDate;

    @ApiModelProperty("上课开始时间")
    @JsonFormat(pattern = "HH:mm")
    private Date startTime;

    @ApiModelProperty("上课结束时间")
    @JsonFormat(pattern = "HH:mm")
    private Date endTime;

    @ApiModelProperty("总课次")
    private Integer totalNum = 0;

    @ApiModelProperty("签到数")
    private Integer signUpNum = 0;

    @ApiModelProperty("未到数")
    private Integer absentNum = 0;

    @ApiModelProperty("请假数")
    private Integer leaveNum = 0;

    @ApiModelProperty("状态0：拼班中  1：待开课 2：拼班未成功 3：开班中  4：解散（到期结课）5：解散（团长解散）、6：解散（人数不足）")
    private String classStatus;

    @ApiModelProperty(hidden = true)
    private String classId;

    private String scheduleId;

    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date scheduleDetailCourseDate;

    @ApiModelProperty("校区名称")
    private String campusName;
}
